
 
 
#include <stdio.h>
#include "erro.h"
 
typedef struct erro {
	char *err_code;
	char *mensagem;
} ERRO;

static ERRO erro[] = {
	{"OK", 			"Operacao com sucesso"},
	{"KO", 			"Operacao sem sucesso"},
	{"UTILIZADOR_INEXISTENTE", 	"Utilizador nao existe "},
	{"LUGAR_INEXISTENTE", 		"Lugar nao existe"},
	{"NICKNAME_EXISTENTE", 		"Nickname ja existe"},
	{"LUGAR_JA_EXISTE", 		"Lugar ja existe"},
	{"MEMORY", 			"Memoria esgotada"},
	{"DADOS_INVALIDOS", 		"Dados Invalidos"},
	{"OPCAO_INVALIDA",               "Opcao Invalida!"},
	{"CHECKIN_INVALIDO"		"Checkin Invalido" },
};

 

/**
 * Reporta o erro escrevendo uma mensagem no standard error.
 * @param erro_num 0 numero do erro que vem da tabela de erros. Usar sempre o DEFINE e nao o valor.
 */

int msg_erro(int erro_num){
	(void) fprintf(stderr, "%s: %s\n", erro[erro_num].err_code, erro[erro_num].mensagem);
	return erro_num;
}
